1. Field of the Invention
The present invention provides a method for accessing data by controlling an optical disc drive and related apparatus, more particularly, to a method that accesses data by performing a pause state to adapt to a change of time for stabilizing a rotational speed of a motor in the optical disc drive and related apparatus.
2. Description of the Prior Art
Optical discs having small size, low cost, and large memory capacity for recording electronic data and information have become one of the most important memory mediums. The development of recordable optical discs has made the optical disc become one of the most important nonvolatile memory mediums. As a user must use an optical disc drive to access data on the optical disc, optical disc drive technology has become one of the major research topics for industry, with the aim of making optical disc drive data access more correct and efficient.
FIG. 1 is a functional diagram of an optical disc drive 10 according to the prior art. The optical disc drive 10 comprises a motor 12, a sliding track 14 fixed to the optical disc 22, a pickup head 16 for accessing data on the optical disc 22, a drive circuit 20, and a control circuit 18. The motor 12 is used to drive an optical disc 22, and the control circuit 18 is used to control the optical disc drive 10. The optical disc 22 comprises a track 24 around the center of the optical disc 22 used to record data, and the track 24 can be divided into a plurality of tracks along a radial line (DO shown in FIG. 1) of the optical disc 22. For example, a track 28A and a track 28B next to the track 28A are on the outer circle, and a track 28C is on the inner circle. The sliding track 14 is fixed along the radial line DO of the optical disc 22, and the pickup head 16, sliceable along the sliding track 14, can slide in both directions along the sliding track 14 so as to access data on the optical disc 22. The pickup head 16 generates a laser to a lower surface 26 of the optical disc 22, and the optical disc drive 10 analyzes the data recorded on the optical disc 22 according to the laser reflected to the pickup head 16. In the recordable optical disc drive, a laser generated by the pickup head 16 to record data onto the tracks 24 is also used. When the motor 12 drives the optical disc 22, the tracks on the optical disc 22 pass by the pickup head 16 as the optical disc 22 rotates. To access data on different tracks, the pickup head 16 slides along the sliding track 16 to different positions according to the different tracks.
The control circuit 18 controls the sliding of the pickup head 16, and receives the data read by the pickup head 16. In a recordable optical disc drive, the control circuit 18 also records data onto the optical disc 22 with the pickup head 16. In addition, the control circuit 18 outputs a drive signal 34 to the drive circuit 20, and the drive circuit 20 transfers the drive signal 34 to a corresponding signal that controls the rotational speed of the motor 12, then the motor 12 adjusts the rotational speed according to the corresponding signal outputted by the drive circuit 20.
Because data is recorded on the optical disc with great density, it is necessary to coordinate performance of the mechanical and electronic apparatuses in the optical disc drive 10 before it accesses the data on the optical disc 22, and especially before it records data onto the optical disc 22. Furthermore, due to a special coding of the data recorded on the optical disc, even if the operation of the electronic apparatus is not perfect and reads a certain part of the data incorrectly, the optical disc drive 10 performs functions of error checking and recovery so as to analyze erroneous parts of the data according other parts of the data.
To control the optical disc drive 10 to record data onto the optical disc 22, the recordable optical disc is specially designed to assist the coordination between mechanical and electronic apparatus while the optical disc drive 10 records data onto the recordable optical disc. Refer to FIG. 2 and FIG. 3. FIG. 2 and FIG. 3 are structure diagrams of a recordable optical disc. As shown in FIG. 2, the optical disc comprises the track 24 around the center of the optical disc 22, and on the recordable optical disc, the track 24 is formed with a data track 30A and wobble tracks 30B distributed on both sides of the data track 30A (as shown in region 1A of FIG. 2). The data track 30A and lines 33 of the wobble tracks 30B spiral around the center of the optical disc 22. As shown in region 1A of FIG. 2, the wobble tracks 30B periodically differ from the lines 33 in two regions WT1 And WT2 having different lengths. Refer to region 1B of FIG. 2 and FIG. 3, which is the three-dimensional structure of region 1B, the data track 30A is for recording data along discontinues spreading recording marks 32 (pits, for example) with different lengths, the wobble tracks 30B being formed with a continuous spreading pre-groove. When the track 24 passes the pickup head, the pickup head accesses data on the data track 30A and sweeps the pre-groove along the lines 33 of the wobble tracks 30B at the same time. As shown in FIG. 3, because the intensities of lasers reflected from high parts and low parts of the pre-groove are different, when the pickup head 16 passes over the pre-groove along the lines 33 of the wobble tracks, it reads out signals with different intensities according to the reflected lasers. The cycle of of strong signals and weak signals is related to the lengths of the regions WT1 And WT2. The optical disc 22 is used to code and record wobble data onto the wobble tracks 30B according to different lengths of the regions WT1 And WT2. The optical disc drive 10 analyzes the laser signals reflected from the pre-groove so as to read out the wobble data recorded on the wobble tracks 30B from the cycle of strong signals and weak signals.
The data track of a recordable optical disc is used for recording user data, and the wobble data on the wobble tracks is used to record data related to standard of data on the optical disc 22. For example, the wobble data on the wobble tracks is used to record positions of a plurality of frames, which divide the tracks 24 and are used to record certain data, so as to assist the optical disc drive 10 to correctly record data onto corresponding frames. The data track on a blank recordable optical disc does not initially record with any data, thus, it is necessary for the optical disc drive 10 to read the standard of data from the wobble data recorded on the wobble tracks. When the data track does have recorded data, while the optical disc drive records new data onto the data track, it still has to read the standard of data from the wobble data so as to record new data onto correct frames. When the optical disc drive 10 needs to record data onto certain frame, it has to know the position of the frame and generate a recording clock synchronized with the frame according to the wobble data so as to control the pickup head to record each byte of the data onto the frame. On the data track, the different lengths of the recording marks represent different numbers of bytes. To correctly represent corresponding number of bytes with recording marks with proper lengths, the optical disc drive 10 determines how long the pickup head 16 remains emitting recording laser based on the recording clock. Once the recording clock is synchronized with frames defined by the wobble data, the optical disc drive 10 can record each byte of data with proper length onto the corresponding frame.
As stated previously, it is necessary to coordinate performances of mechanical and electronic apparatuses in the optical disc drive 10 before it accesses the data on the optical disc 22. For example, while a rotational speed of the motor is higher and makes a certain frame pass the pickup head with a higher linear velocity, the optical disc drive 10 controls the pickup head 16 accordingly to output a recording clock with a higher frequency so as to record data onto the frame correctly. To access data on the optical disc 22 smoothly, the optical disc drive 10 coordinates operation of mechanical and electronic apparatuses under a certain procedure. Refer to FIG. 4. FIG. 4 is a flowchart of mechanical and electrical coordination procedure 100 before the optical disc drive 10 begins to record data. The procedure 100 is especially suitable for an optical disc drive operating under a constant linear velocity. The optical disc drive operating under a constant linear velocity controls tracks on the inner circle (ex. 28A and 28B of FIG. 1) and on the outer circle (ex. 28C of FIG. 1) to move past the pickup head 16 with same linear velocity. Therefore, the rotational speed of the motor 12 is faster as the pickup head 16 is accessing tracks on the inner circle (ex. 28C of FIG. 1), and the rotational speed of the motor 12 is slower as the pickup head 16 is accessing tracks on the outer circle (ex. 28A of FIG. 1) so as to control tracks on the inner circle and on the outer circle to pass the pickup head 16 with same linear velocity. Because tracks on the inner circle and on the outer circle pass the pickup head 16 with the same linear velocity, the optical disc drive 10 operating under a constant linear velocity accesses data on different tracks with the same transmission rate. Therefore, it is more stable to access data and more correct to read/record data. On the contrary, the mechanical and electronic coordination procedure of the prior art is more complex because the rotational speed of the motor 12 has to change while data on different tracks are accessed under a constant linear velocity. As shown in FIG. 4, the procedure 100 of the prior art comprises:
Step 102: Start to trace tracks for recording data. Before a user controls the optical disc drive to slide the optical pickup head 16 to a position (called the “target position” hereafter) corresponding to a certain site on the track 24 and record data onto the optical disc 22, the user can perform tests, such as pre-recording data onto the inner area of the optical disc.
Step 104: As stated previously, the rotational speed of the motor 12 has to change while data on different tracks are accessed under a constant linear velocity. After determining the certain site for recording data, the motor 12 starts to adjust the rotational speed according to a rotational speed corresponding to the track where the certain site located. Meanwhile, the pickup head 16 remains moving toward the target position corresponding to the certain site. While the motor 12 adjusts the rotational speed, the control circuit 18 monitors stability of the rotational speed of the motor 12. If the rotational speed is stable then execute step 106, if the rotational speed is unstable then repeat step 104 until the rotational speed becomes stable. According to the prior art, the optical disc drive 10 starts to adjust the rotational speed of the motor 12 when there is a predetermined distance between the pickup head 16 and the target position, then repeats step 104 to check if the rotational speed of the motor has becomes stable. The control circuit 18 determines the rotational speed of the motor 12 with the drive signal 34 outputted to the drive circuit 20 by the control circuit 18.
Step 106: Start to synchronize the recording clock with the wobble data. As stated previously, the recording clock has to synchronize with the frame defined by the wobble data so as to record data onto the optical disc 22 correctly. After the rotational speed of the motor 12 is stable, the optical disc drive 10 adjusts a frequency of the recording clock according to the wobble data read from the optical disc 22 so as to remain synchronizing the recording clock with the wobble data. Before executing step 108, repeat step 106 until the recording clock has synchronized with the frame defined by the wobble data. Meanwhile, the pickup head 16 remains moving toward the target position.
Step 108: Examine if the pickup head 16 overtakes the target position. If it does not, execute step 110, and if it does, slide the pickup head 16 backward and repeat steps 102, 104, and 106.
Step 110: Start to record data onto tracks of the optical disc 22 corresponding to the target position with the pickup head 16.
Refer to FIG. 5. FIG. 5 is a diagram of position of the pickup head 16 on the sliding track 14 and sequence of related signals when executing the steps shown in FIG. 4. Region 5A of FIG. 5 shows different positions of the pickup head 16 on the sliding track 14 at different times, the horizontal direction representing the position of the pickup head. A wave pattern 37 and a wave pattern 34 of FIG. 5 separately represent a wave pattern of tracking error and a wave pattern of drive signal 34, horizontal direction of the two wave patterns representing time, the vertical direction of the two wave patterns representing intensity of signal. The wave pattern 37 of tracking error represents how many tracks the pickup head 16 has crossed, for example, a period TO of FIG. 5 represents that the pickup head 16 has crossed a track. As stated previously, the control circuit 18 of FIG. 1 controls the drive circuit 20 to change the rotational speed of the motor 12 with the drive signal 34, and changes the intensity of the drive signal 34 to adjust the rotational speed of the motor 12 according to the read-out data from the pickup head 16. Therefore, the wave pattern of drive signal 34 can represent the rotational speed of the motor 12.
Assuming a position of the pickup head 16 on the sliding track 14 is a position Pp0 (shown in FIG. 5) corresponding to the track 28C of FIG. 1 when executing step 102, a user outputs a recording instruction to the optical disc drive 10 to record data onto the track 28B corresponding to a position Pp3 (a target position) on the sliding track 14 through a computer. After receiving the recording instruction, the optical disc drive 10 starts to control the pickup head 16 to slide from the position Pp0 to the position Pp3. According to the procedure 100 of the prior art, the optical disc drive 10 begins to execute step 104 and step 106 when there is a predetermined distance between the pickup head 16 and the target position. In this case, the predetermined distance is D0. According to the target position Pp3 and the predetermined distance D0, the optical disc drive 10 determines a beginning position Pp1 where it begins to execute step 104 and 106. During executing step 102, the optical disc drive 10 controls the pickup head 16 to slide from the position Pp0 to the beginning position Pp1. The pickup head 16 performs a long distance track crossing when the distance between the position Pp0 and the beginning position Pp1 is longer, thus, the wave pattern 37 of tracking error is more concentrated during a period Tp1. Then, the pickup head 16 performs a short distance track crossing during a period Tp2. Finally, the pickup head 16 performs track crossing between several tracks to slightly adjust its position before it has arrived at the beginning position to complete step 102, and starts to execute step 104 from the beginning position Pp1.
The rotational speed of the motor 12 varies to access data on different tracks with the optical disc drive 10 operating under a constant linear velocity. While executing step 102, the rotational speed of the motor 12 corresponds to the track 28C and is relatively fast, and while the optical disc drive 10 records data onto the track 28B, the rotational speed of the motor 12 changes to a corresponding slower speed. When adjusting the rotational speed of the motor 12 during step 104, the pickup head 16 remains moving toward the target position Pp3. As shown in the wave pattern 34, the control circuit 18 changes the drive signal 34 to reduce the rotational speed of the motor 12 so as to change the rotational speed of the motor 12 to the rotational speed of the track corresponding to the target position Pp3. Because the control circuit 18 adjusts the drive signal 34 according to the data read from the pickup head 16, when the rotational speed of the motor 12 is not stable, the drive signal 34 changes to compensate the change of the rotational speed of the motor 12. The optical disc drive 10 determines a predetermined range, such as a range between L1 and L2 of FIG. 5. When the wave pattern of the drive signal 34 remains within the range between L1 and L2, a change of the rotational speed of the motor 12 is close to a tolerant range of speed corresponding to the target position, and thus, the rotational speed of the motor 12 stably changes to a rotational speed corresponding to the target position (the purpose of step 104).
When executing step 104, the predetermined distance D0 is divided into two predetermined distances D1 and D2. The predetermined distance D1 is for executing step 104 when the motor 12 stably changes to the rotational speed corresponding to the target position Pp3, and the predetermined distance D2 is for executing step 106. During the period the pickup head 12 slides from the beginning position Pp1 to the position Pp2 for the predetermined distance D1, the optical disc drive 10 executes step 104 at the same time. If the rotational speed of the motor 12 becomes stable when the pickup head 12 has slid to the position Pp2, the pickup head 12 begins to execute step 106 from the position Pp2. As shown in FIG. 5, because the pickup head 12 slides smoothly along the track 24 toward the position Pp2 during the period Tp4 of sliding from the beginning position Pp1 to the position Pp2, the wave pattern 37 remains straight and no track is crossed, and the wave pattern of the drive signal 34 changes to remain in the range between L1 and L2.
After the rotational speed of the motor 12 has become stable, the optical disc drive 10 executes step 106 and adjusts the frequency of the recording clock according to the wobble data read out from the optical disc 22 so as to synchronize the recording clock with the wobble data during the period when the pickup head 12 slides from the position Pp2 to the target position Pp3. When the optical disc 22 synchronizes the recording clock with the wobble data as the pickup head 12 arrives at the target position Pp3, the step 106 is successfully executed. Hereafter, the optical disc drive 10 executes step 108 and step 110, and starts to record data onto the target position Pp3 of the optical disc 22 when executing step 110.
The procedure 100 according to the prior art provides the optical disc drive 10 with predetermined distances D1 and D2 for giving more time to the optical disc drive 10 to adjust the rotational speed of the motor 12 and synchronize the recording clock with the wobble data. Generally speaking, the lengths of the predetermined distances D1 and D2 are determined according to a pre-written program of the control circuit 18. It is simple to predict the time for synchronizing during step 106 and the length of the predetermined distance D2, because synchronizing is only about the performance of the electronic apparatus when executing step 106. On the contrary, the time for stabilizing the rotational speed of the motor 12 varies significantly during step 104, so it is difficult to predict and set the length of the predetermined distance D1. This is especially so recently, as electronic apparatuses (ex. control circuit 18) and mechanical apparatuses (ex. motor 12) of optical disc drives are mainly produced at different factories. It is more difficult for the factories that produce the electronic apparatus to estimate the predetermined distance. If the rotational speed of the motor 12 is not stable after the pickup head 16 has slid the predetermined distance D1, the optical disc drive 10 continues to execute step 104 though the pickup head 16 has overtaken the position Pp2 until the rotational speed of the motor 12 becomes stable. Therefore, step 106 is delayed, and the pickup head 16 has overtaken the target position Pp3 when the optical disc drive 10 has completed step 106, thus, the pickup head 16 has to slide backward and repeat steps 102,104, and 106.
Refer to FIG. 6, which is similar to FIG. 5. As shown in FIG. 6, the pickup head 16 is assumed to slide from a position Pp0 to a target position Pp3 for recording data while executing step 102. Likewise, the optical disc drive 10 determines a beginning position Pp1 based on the target position Pp3 and predetermined distances D1 and D2. During step 102, the pickup head 16 crosses tracks to the beginning position Pp1 after it goes through a period Tp1 to a period Tp3. The optical disc drive 10 executes step 104 as the pickup head 16 starts to slide from the beginning position Pp1. However, a wave pattern of the drive signal 34 still exceeds a range of a tolerant value between L1 and L2 if the rotational speed of the motor 12 is not stable after the pickup head 16 has slid the distance D1 and arrived at the position Pp2 (as shown in FIG. 6). Then, the optical disc drive 10 continues to execute step 104, and the pickup head 16 will overtake the position Pp2 and continue to slide toward the target position Pp3. If the rotational speed of the motor 12 is not stable until the pickup head 16 has slid to a position Pp4, the pickup head 16 continues to slide until step 106 and wait until the control circuit 18 has synchronized the recording clock with the wobble data at the same time. Because the optical disc drive 10 cannot complete step 104 during the period when the pickup head 16 slides for the predetermined distance D1, the pickup head slides a distance longer than the predetermined distance D1 and arrives at a position Pp4 when the optical disc drive 10 has completed step 104. Due to the delay of step 104, the pickup head 16 overtakes the target position Pp3 and arrives at a position Pp5 when the optical disc drive 10 has completed step 106 during a period Tp5. The optical disc drive 10 determines that the position of the pickup head 16 has overtaken the target position Pp3 during step 108. Then, the optical disc drive 10 performs a long distance track crossing and a short distance track crossing, and slightly adjusts the position of the pickup head 16 so as to slide the pickup head 16 to a position Pp6 before the target position Pp3. Again, the optical disc drive 10 repeats step 104 and 106 during the period when the pickup head 16 slides from the position Pp6 to the target position Pp3.
According to the prior art, the optical disc drive 10 cannot complete step 104 during the period when the pickup head 16 slides for the predetermined distance D1, and wastes significant amounts of time to trace tracks, stabilize the rotational speed of the motor 12, and synchronize the recording clock with the wobble data. Therefore, the length of the predetermined distance D1 has to be long enough so as to complete step 104 once. However, as stated previously, the time for stabilizing the rotational speed of the motor 12 varies substantially during step 104, so it is difficult to predict and set the length of the predetermined distance D1. Thus, to make sure the length of the predetermined distance D1 is long enough, the length of the predetermined distance D1 is extended as long as possible. However, the actual time (the time “t0” shown in FIG. 5) for completing step 104 might be much shorter than the time (the position “Pp2” shown in FIG. 5) for the pickup head 16 to finish the predetermined distance D1 hereafter, and the optical disc drive 10 wastes time sliding for the predetermined distance D1 before it executes step 106. On the other hand, if the length of the predetermined distance D1 is too short, the optical disc drives 10 wastes more time because the pickup head 16 overtakes the target position.